#define _CRT_SECURE_NO_WARNINGS
#include<iostream>
using namespace std;
int main()
{
	////跳转语句:
	////一、break语句(用于跳出选择结构或者循环结构):
	////使用时机:
	////1.出现在switch语句中
	//cout << "请选择难度:" << endl;
	//cout << "1.简单" << endl;
	//cout << "2.普通" << endl;
	//cout << "3.困难" << endl;
	//int select;
	//cin >> select;
	//switch (select)
	//{
	//case 1:cout << "简单" << endl; break;
	//case 2:cout << "普通" << endl; break;
	//case 3:cout << "困难" << endl; break;
	//default:;
	//}

	////2.出现在循环语句中:
	//for (int i = 0; i < 10; i++)
	//{
	//	if (i >= 5)
	//	{
	//		break;
	//	}
	//	cout << i << endl;
	//}

	////3.出现在嵌套循环语句中:
	//for (int i = 0; i < 10; i++)
	//{
	//	for (int j = 0; j < 10; j++)
	//	{
	//		if (j > 5)
	//		{
	//			break;
	//		}
	//		cout << "*";
	//	}
	//	cout << endl;
	//}

	////二、continue语句
	////作用:在循环语句中，跳过本次循环中余下尚未执行的语句，继续执行下一次循环
	//for (int i = 1; i <= 100; i++)//奇数输出 偶数不输出
	//{
	//	if (i % 2 == 0)
	//	{
	//		continue;//这里不能用break，否则会跳出循环。可作为筛选条件的作用
	//	}
	//	cout << i << endl;
	//}

	////三、goto语句:
	////作用:可以无条件跳转语句
	////语法:goto 标记(飞雷神！)
	//cout << "1.aaa" << endl;
	//cout << "2.bbb" << endl;
	//goto FLAG;
	//cout << "3.ccc" << endl;
	//cout << "4.ddd" << endl;
	//cout << "5.eee" << endl;
	//FLAG:
	//cout << "6.fff" << endl;
	////不推荐用，会导致结构混乱


	//数组:就是一个集合，里面存放了相同数据类型的数据元素
	//特点1：数组中的每个数据元素都是相同的数据类型
	//特点2：放在一块连续的内存空间中

	////一维数组：
	////三种定义方式：
	////1.数据类型 数组名[数组长度]
	////2.数据类型 数组名[数组长度]={值1，值2....}
	////3.数据类型 数组名[]={值1，值2....}
	//int arr[5];
	//arr[0] = 0;
	//arr[1] = 1;
	//arr[2] = 2;
	//arr[3] = 3;
	//arr[4] = 4;
	//cout << arr[0] << endl;
	//cout << arr[1] << endl;
	//cout << arr[2] << endl;
	//cout << arr[3] << endl;
	//cout << arr[4] << endl;

	//int arr[5] = { 10,20,30,40,};//如果在初始化数据的时候，没有全部填写完，会用0来填补
	//cout << arr[0] << endl;
	//cout << arr[1] << endl;
	//cout << arr[2] << endl;
	//cout << arr[3] << endl;
	//cout << arr[4] << endl;
	//cout <<endl;
	//for (int i = 0; i < 5; i++)
	//{
	//	cout << arr[i] << endl;
	//}

	//int arr[] = { 10,20,30,40,50,60,70};
	//for (int i = 0; i < 7; i++)
	//{
	//	cout << arr[i] << endl;
	//}

////一维数组数组名:
////用途：
////1.可以统计整个数组在内存中的长度
//int arr[10] = { 1,2,3,4,5,6,7,8,9,10 };
//cout << "整个数组所占内存空间大小为:" << sizeof(arr) << endl;
//cout << "每个元素所占内存空间大小为:" << sizeof(arr[0]) << endl;
//cout << "数组中元素个数为:" << sizeof(arr) / sizeof(arr[0]) << endl;
//
////2.可以获取数组在内存中的首地址
//cout << "数组首地址为：" << (int)arr << endl;
//cout << "数组中第一个元素的地址为：" << (int)& arr[0] << endl;
//cout << "数组中第二个元素的地址为：" << (int)& arr[1] << endl;//&为取址符号
////数组名是常量不可以进行赋值:arr=100是错的

////练习案例1：五只小猪称体重
////在一个数组中记录了五只小猪的体重
////要求：找出最重的并打印
//解法一:
//int arr[5] = { 300,350,200,400,250 };
//int max = 0;
//for (int i = 0; i < 5; i++)
//{
//	if (arr[i] > max)
//	{
//		max = arr[i];
//	}
//}
//cout << "最重的小猪为：" <<max<< endl;

////解法二：（三目运算符)
//int arr[5] = { 300,400,350,200,250 };
//int max = 0;
//for (int i = 0; i < 4; i++)
//{
//	arr[i]>max ? max = arr[i] : true;
//	//或者 max = (arr[i] > max ? arr[i] : max);
//}
//cout << "最重的小猪是:" << max << endl;
////可以看出来三目运算符是有点判断的意味的，不过只能进行一层判断











	return 0;
	system("pause");
}